package javateste;

import javateste.Pessoa.Professor;
import javateste.Pessoa.Aluno;
import javateste.Pessoa.Pessoa;

public class Main {

    public static void main(String[] args) {
        Professor p = new Professor(16, 8, 2010, "Barney Professor", "6793121");
        p.setHorasSemanais(12);
        Professor.setSalarioBase((float)25.50);
        System.out.println(p);
        Aluno a = new Aluno(1,1,2009,"Barney1","6793121");
        System.out.println(a);
        Pessoa pessoas[] = new Pessoa[4];
        pessoas[0] = new Pessoa("P1", 1);
        pessoas[1] = new Aluno(23,8,2010,"Ronaldo","2");
        pessoas[2] = new Pessoa("P3", 3);
        pessoas[3] = new Aluno(23,8,2010,"Barney2","6793121"); //Um objeto de uma classe base pode ser instanciado a um objeto de uma classe derivada
        for (int i=0;i<pessoas.length;i++)
        {
            if (pessoas[i] instanceof Aluno) //testa se o objeto antes de instanceof é uma instancia do tipo do objeto que vem em seguida.
            {
                a = (Aluno)pessoas[i];
                System.out.println(a);
            }
        }
    }

}
